package Message.BroadCast
{
	import Engine.RMI.*;
	import Framework.Serialize.*;
	
	public class EGroupStatus extends Object
	{
		public var __value:int;
		private static var __values:Array = [];
		public static const _EGroupStatusNull:int = 0;
		public static const EGroupStatusNull:EGroupStatus = new EGroupStatus(_EGroupStatusNull);
		public static const _EGroupStatusGroup:int = 1;
		public static const EGroupStatusGroup:EGroupStatus = new EGroupStatus(_EGroupStatusGroup);
		public static const _EGroupStatusCaptain:int = 2;
		public static const EGroupStatusCaptain:EGroupStatus = new EGroupStatus(_EGroupStatusCaptain);
		
		public function EGroupStatus(param1:int)
		{
			this.__value = param1;
			__values[param1] = this;
			
		}
		
		public function value() : int
		{
			return this.__value;
		}
		
		public function equals(param1:Object) : Boolean
		{
			if (param1 == this)
			{
				return true;
			}
			var _loc_2:* = param1 as ERMICallModel;
			if (_loc_2 == null)
			{
				return false;
			}
			return this.__value == _loc_2.value();
		}
		
		public function hashCode() : int
		{
			return 5 * this.__value;
		}
		
		public function __write(param1:SerializeStream) : void
		{
			param1.writeByte(this.__value);
			
		}
		
		public static function convert(param1:int) : EGroupStatus
		{
			return __values[param1];
		}
		
		public static function __read(param1:SerializeStream) : EGroupStatus
		{
			var _loc_2:* = param1.readByte();
			if (_loc_2 < 0 || _loc_2 >= 3)
			{
				throw new MarshalException();
			}
			return EGroupStatus.convert(_loc_2);
		}
		
	}
}
